package com.pactera.mapper;

import com.github.pagehelper.Page;
import com.pactera.model.SysRole;
import com.pactera.vo.role.RoleReqBrowseVo;
import com.pactera.vo.role.RoleRespPageVo;
import com.pactera.vo.role.RoleRespVo;

import java.util.List;

import org.apache.ibatis.annotations.Param;


public interface SysRoleMapper {
	
    int deleteByPrimaryKey(String id);

    int insert(SysRole record);

    SysRole selectByPrimaryKey(String id);

    List<SysRole> selectAll();

    int updateByPrimaryKey(SysRole record);
    
    /**
     * @Title: selectAllByPage 
     * @Description: 根据分页查询信息（传入多条件）
     * @param sysRoleReqVo 系统角色请求映射类
     * @return Page<SysRole> 系统角色分页信息
     * @author LiuGuiChao
     * @date 2019年1月8日 上午9:55:21 
    */
    Page<RoleRespVo> selectAllByPage(@Param(value = "roleBrowseReqVo")RoleReqBrowseVo roleBrowseReqVo);
    
    /**
     * @Title: selectByUserId 
     * @Description: 根据用户ID获取该用户所拥有的角色信息
     * @param userId 用户ID
     * @return List<RoleRespVo>
     * @author LiuGuiChao
     * @date 2019年1月10日 上午10:27:46 
    */
    List<RoleRespVo> selectByUserId(@Param(value = "userId")String userId);
}